A common image processing device is a digital still camera (DSC). A DSC is an image input device that typically includes a single charge-couple device (CCD) array. A CCD array is an array of light detectors, which typically detects one of three monochrome colors (e.g., red R, green G, or blue B) for each light detector location. To output a color image, however, the DSC must provide a complete set of RGB (or CMY or YCrCr) tri-stimulus values for each light detector location. Such a process is commonly referred to as “demosaicing” in which full color at every pixel is calculated from a patchwork of color filter values distributed over the captured image.
Thus, a typical image processing workflow for a current DSC is to capture an image using the CCD array of light detectors, to convert the information from the light detectors into digital form (i.e., raw captured image data), and to provide color to image data by a demosaicing process, to perform a white balancing process, to perform a chromatic improvement process, and finally to perform an edge enhancement process.
In the image capturing process, prior to demosaicing, a DSC arranges the colors from the light detectors in a systematically repeating pattern as the raw captured image data. For example, the raw captured image data can have “Bayer” pattern with interleaved lines of “RGRGRG . . . ” followed by lines of “GBGBGB . . . ” At this point, the captured image is represented as a mosaic of RGB color primaries for each light detector location in which no color can be viewed.
Demosaicing is thus the process of computing a complete set of tri-stimulus values at every CCD light detector location to provide color to the image. A number of algorithms can be used to compute the complete set of values, which typically involve nearest neighbor substitution, bi-linear interpolation, and median filtering. For example, a pixel or light detector location, which corresponds to a green detector can infer from neighboring detectors what red and blue values should be at that location where the green detector is located. Similarly, a pixel that corresponds to a red detector can infer from neighboring detectors what the green and blue values are at that location.
A limitation with the demosaicing process, which is equivalent to low-pass filtering process, is that it has some inherent side effects. For example, a low-pass filtering process attenuates the high-frequency detail or accentuates the low-frequency detail of an image. Thus, a common side effect is that it introduces chromatic fringing at the edges of sharp contrast boundaries in an image. That is, the edges of the sharp contrast boundaries have red and blue fringe artifacts. FIG. 1 shows an image 100 having such red and blue artifacts referenced by numerals 101 and 103, respectively.
Currently, the DSC industry uses various forms of edge enhancement processes to improve an image. An edge enhancement process is used to detect edges in an image and to increase the edge detail of the image to produce a more realistic and sharper image in keeping with certain aspects of the Human Visual System (HVS). Such a process, however, compounds the problem of the red and blue fringe artifacts because the edge enhancement typically causes the magnitude of the color fringing to increase in direct proportion to the intensity of the enhancement.
Furthermore, a disadvantage with the operation of a current DSC is that edge enhancements occur at the end of the image processing workflow, i.e., after white balancing and chromatic enhancement processes. White balancing is a process used to calibrate the proportion of red, green, and blue color values so that the white color in the image results in a pure white color without color casts. Chromatic enhancement is a process used to provide a deeper or more saturated color to the color image. Both of these processes, however, alter the raw captured image data before the edge enhancements can take place.
Consequently, a great deal of spatial and chromatic information originally present in the raw image data may have been before the edge enhancement process could have access to the data. This may cause low color fidelity and degraded edge sharpness. For example, as illustrated in FIG. 1, an exemplary image 100 is shown in which edge enhancements are performed late in an image processing workflow in accordance with prior art.
Referring to FIG. 1, image 100 shows a number “2,” which is greatly magnified for purposes of illustration. Blue and red pixel alternations can be noticed by reference to numberals 101 and 103 in image 100 along the number “2.” Such alternations are commonly referred to as a “chromatic moiré.” The chromatic moiré is greatly exaggerated because edge enhancements occur late in the image data processing workflow thus causing the image to have low color fidelity and degraded edge sharpness.